package com.yq.design.flyWeight;

/**
 * @ClassName NewWebSite
 * @Description 具体的享元角色，主要重写继承的父类中的外部状态
 * @Author yaoqiang
 * @Date 2021/2/22 23:44
 * @Version 1.0
 */
public class ConcreteWebSite extends WebSite {

    private  String type="";

    /**
     * new的时候传入自己的type
     * @param type
     */
    public ConcreteWebSite(String type) {
        this.type = type;
    }

    /**
     * 重写抽象方法，能根据创建新对象时得到自己的type，同时也能根据传入的user得到自己的user
     * @param user
     */
    @Override
    public void use(User user){
        System.out.println(user.getName()+".."+type);
    }
}
